package com.app.biz.service;

import java.util.List;
import com.app.biz.domain.formal.BizCityIndustrialEconomicsFormal;
import com.app.biz.domain.request.BizCityIndustrialEconomicsRequest;
import com.app.biz.domain.BizCityIndustrialEconomics;

/**
 * 分市工业企业主要经济指标正式SService接口
 *
 * @author SangGuangCan
 * @date 2024-01-02
 */
public interface IBizCityIndustrialEconomicsFormalService
{
    /**
     * 查询分市工业企业主要经济指标正式S
     *
     * @param baseId 分市工业企业主要经济指标正式S主键
     * @return 分市工业企业主要经济指标正式S
     */
    public BizCityIndustrialEconomicsFormal selectBizCityIndustrialEconomicsFormalByBaseId(String baseId);

    /**
     * 查询分市工业企业主要经济指标正式S列表
     *
     * @param bizCityIndustrialEconomicsFormal 分市工业企业主要经济指标正式S
     * @return 分市工业企业主要经济指标正式S集合
     */
    public List<BizCityIndustrialEconomicsFormal> selectBizCityIndustrialEconomicsFormalList(BizCityIndustrialEconomicsFormal bizCityIndustrialEconomicsFormal);

    /**
     * 新增分市工业企业主要经济指标正式S
     *
     * @param bizCityIndustrialEconomicsFormal 分市工业企业主要经济指标正式S
     * @return 结果
     */
    public int insertBizCityIndustrialEconomicsFormal(BizCityIndustrialEconomicsFormal bizCityIndustrialEconomicsFormal);

    /**
     * 修改分市工业企业主要经济指标正式S
     *
     * @param bizCityIndustrialEconomicsFormal 分市工业企业主要经济指标正式S
     * @return 结果
     */
    public int updateBizCityIndustrialEconomicsFormal(BizCityIndustrialEconomicsFormal bizCityIndustrialEconomicsFormal);

    /**
     * 批量删除分市工业企业主要经济指标正式S
     *
     * @param baseIds 需要删除的分市工业企业主要经济指标正式S主键集合
     * @return 结果
     */
    public int deleteBizCityIndustrialEconomicsFormalByBaseIds(String[] baseIds);

    /**
     * 删除分市工业企业主要经济指标正式S信息
     *
     * @param baseId 分市工业企业主要经济指标正式S主键
     * @return 结果
     */
    public int deleteBizCityIndustrialEconomicsFormalByBaseId(String baseId);

    /**
     * <p>
     *     查询数据库中数据的日期(year_month字段)并进行去重复操作<br/>
     *     主要用于的是APP端左上角的日期过滤
     * </p>
     * @return
     */
    List<String> getUniqueDatesFromDatabase();

    /**
     * <p>
     *     通过日期查询表格中的数据
     * </p>
     * @param request 前端传传来的数据
     * @return 表格中的数据
     */
    List<BizCityIndustrialEconomics> getEconomicIndicatorsByDateList(BizCityIndustrialEconomicsRequest request);
}
